# -*- coding: utf-8 -*-
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#作者：cacho_37967865
#博客：https://blog.csdn.net/sinat_37967865
#文件：jieba_model.py
#日期：2019-09-09
#备注：pip install jieba    结巴”中文分词：做最好的 Python 中文分词组件  
github：https://github.com/fxsjy/jieba
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

from file_deal import a_save_txt
import jieba


def cut_info():
    info = '我来到北京清华大学'

    full_mode = jieba.cut(info, cut_all=True)           # 将语句中所有可能是词的词语都切分出来，速度很快，但是存在冗余数据
    print('全模式：', "/ ".join(full_mode))
    exact_mode = jieba.cut(info, cut_all=False)         # 试图将语句最精确的切分，不存在冗余数据，适合做文本分析
    print('精确模式：', "/ ".join(exact_mode))
    default_mode = jieba.cut(info)
    print('默认精确模式：', "/ ".join(default_mode))
    search_mode = jieba.cut_for_search(info)             # 在精确模式的基础上，对长词再次进行切分
    print('搜索引擎模式：', "/ ".join(search_mode))
    HMM_mode = jieba.cut(info, HMM=False)
    print('使用HMM新词发现功能：', "/ ".join(HMM_mode))


def get_count():
    with open ("重生为君 作者：赵洞庭颖儿.txt", "r", encoding='utf-8') as fp:
        txt = fp.read()
        words = jieba.lcut(txt)       # 使用精确模式对文本进行分词
        print(type(words))
        counts = {}
    for word in words:
        if len(word) == 1:    # 单个词语不计算在内
            continue
        else:
            counts[word] = counts.get(word, 0) + 1    # 遍历所有词语，每出现一次其对应的值加 1
    #print(counts)
    items = list(counts.items())
    items.sort(key=lambda x: x[1], reverse=True)  # 根据词语出现的次数进行从大到小排序
    #print(items)


if __name__ == '__main__':
    get_count()